﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DTO;
using System.Data;
using System.Data.SqlClient;
namespace DAL
{
   public  class DocGiaDAO
    {
        dataHelpper da = new dataHelpper();

        #region"Khởi Tạo Kết nối"
        public SqlConnection khoitaoKN()
        {
            SqlConnection conn = new SqlConnection();
            conn = dataHelpper.taoKN();
            return conn;
        }
        #endregion
        #region ""Phat sinh Mã Độc Giả"
        public string Phatsinh_maDG()
        {
            string madg = "DG";
            string sql = "select max(id)+1 from docgia";
            int temp = (int)da.ExecuteCalar(sql);
            madg += temp.ToString();
            return madg;
        }
        #endregion
        #region " Lập Thẻ độc Giả "
        public void LapTheDocGia(DocGiaDTO DG)
        {
            //da.Mo_KN();
            string sql = "insert into DocGia(madocgia,tendocgia,ngaysinh,diachi,email,dienthoai,ngaylapthe,ngayhethan,manguoilap,maloaidocgia,tienno) values( ";
            sql += "'" + DG.Madocgia + "',";
            sql += "'" + DG.Hoten + "',";
            sql += "'" + DG.Ngaysinh + "',";
            sql += "'" + DG.Diachi + "',";
            sql += "'" + DG.Email + "',";
            sql += "'" + DG.Dienthoai + "',";
            sql += "'" + DG.Ngaylapthe + "',";
            sql += "'" + DG.Ngayhethan + "',";
            sql += "'" + DG.Manguoilap + "',";
            sql += "'" + DG.Maloaidocgia + "',";
            sql += "" + DG.Tienno + ")";
            da.truyvan(sql);
            // da.Dong_KN();
        }
        #endregion
        #region "Xóa Độc Giả"
        public void xoaDocGia(DocGiaDTO DG)
        {
            //da.Mo_KN();
            string sql = "delete from docgia where madocgia='" + DG.Madocgia + "'";
            da.truyvan(sql);
            //da.Dong_KN();
        }
        #endregion
        #region " Sửa thông tin độc giả"
        public void Sua_DocGia(DocGiaDTO DG)
        {
            // da.Mo_KN();
            string sql = "update docgia set hoten='N" + DG.Hoten + "',";
            sql += "ngaysinh ='" + DG.Ngaysinh + "', ";
            sql += "diachi='N" + DG.Diachi + "',";
            sql += "email='" + DG.Email + "',";
            sql += "DienThoai='" + DG.Dienthoai + "',";
            sql += "NgaylapThe='" + DG.Ngaylapthe + "',";
            sql += "NgayHetHan= '" + DG.Ngayhethan + "', ";
            sql += "MaNguoiLap= '" + DG.Manguoilap + "', ";
            sql += "MaLoaiDocGia= '" + DG.Maloaidocgia + "' ";
            sql += "TienNo= '" + DG.Tienno + "' ";
            sql += "where MaDocGia='" + DG.Madocgia + "' ";
            da.truyvan(sql);
            // da.Dong_KN();
        }
        #endregion
        #region "Tra cứu Thông Tin DocGia"
        public DataSet TimKiemTheoMaDG(string MaDG)
        {
            string sql = "select nv.manv as 'Mã Nhân Viên', nv.hoten as 'Họ Và Tên', nv.ngaysinh as 'Ngày Sinh',";
            sql += "nv.diachi as 'Địa Chỉ' , nv.dienthoai as 'Điện Thoại Liên Lạc',";
            sql += "nv.bangcap as ' Bằng Cấp',cv.tenchucvu as 'Chức Vụ', bp.tenbophan as 'Bộ Phận Làm Việc' ";
            sql += "from nhanvien nv, bophan bp, chucvu cv ";
            sql += "where manv like '%" + MaDG  + "%'";
            sql += "and nv.machucvu=cv.machucvu and nv.mabophan=bp.mabophan";
            return da.HienThi(sql);
        }

        public DataSet TimKiemTheoTen(string tennv)
        {
            string sql = "select nv.manv as 'Mã Nhân Viên', nv.hoten as 'Họ Và Tên', nv.ngaysinh as 'Ngày Sinh',";
            sql += "nv.diachi as 'Địa Chỉ' , nv.dienthoai as 'Điện Thoại Liên Lạc',";
            sql += "nv.bangcap as ' Bằng Cấp',cv.tenchucvu as 'Chức Vụ', bp.tenbophan as 'Bộ Phận Làm Việc' ";
            sql += "from nhanvien nv, bophan bp, chucvu cv ";
            sql += "where hoten like'%" + tennv + "%' ";
            sql += "and nv.machucvu=cv.machucvu and nv.mabophan=bp.mabophan";
            return da.HienThi(sql);

        }
        //public DataTable TimTheoNgaySinh(NhanVienDTO NV)
        //{
        //    string sql = "select * from nhanvien ngaysinh ngaysinh between '#"++"#'";
        //}
        public DataSet TimtheoNamSinh(int tu, int den)
        {
            string sql = "select nv.manv as 'Mã Nhân Viên', nv.hoten as 'Họ Và Tên', nv.ngaysinh as 'Ngày Sinh',";
            sql += "nv.diachi as 'Địa Chỉ' , nv.dienthoai as 'Điện Thoại Liên Lạc',";
            sql += "nv.bangcap as ' Bằng Cấp',cv.tenchucvu as 'Chức Vụ', bp.tenbophan as 'Bộ Phận Làm Việc' ";
            sql += "from nhanvien nv, bophan bp, chucvu cv ";
            sql += " where year(ngaysinh) between " + tu + " and " + den + "";
            sql += "and nv.machucvu=cv.machucvu and nv.mabophan=bp.mabophan";
            return da.HienThi(sql);
        }

        #endregion
        #region"Hien Thi Bảng Độc Giả"
        public DataSet HienThi_DSDG()
        {
            // da.Mo_KN();
            string sql = "select dg.madocgia as 'Mã Độc Giả', dg.TenDocGia as 'Họ Và Tên', ";
            sql += "dg.NgaySinh as 'Ngày Sinh', dg.DiaChi as 'Địa Chỉ' , dg.Email as 'Email',";
            sql += "dg.dienthoai as 'Điện Thoại', l.TenLoaiDocGia as 'Loại Độc Giả', dg.TienNo as 'Tiền Nợ',nv.hoten as'Người Lập Thẻ' ";
            sql += "from DocGia dg, LoaiDocGia l, NhanVien nv ";
            sql += "where dg.manguoilap = nv.manv and dg.MaLoaiDocgia=l.MaLoaiDocGia";
            return da.HienThi(sql);
            // da.Dong_KN();
        }
       
    }
}
        #endregion